package com.project.service;

import com.github.pagehelper.PageInfo;
import com.project.bean.MailBean;

import java.time.LocalDate;

/**
 * 邮件对象业务接口
 */
public interface IMailService {
    /**
     *添加邮件
     * 1、将收件人姓名集合拼接为字符串封装到邮件对象
     * 2、添加邮件记录（默认现场时间）
     * 3、根据收件人id集合，邮件id，添加收件箱记录
     * @param mail 邮件信息对象（主题、邮件内容、附件地址）
     * @param receiveIdArray 收件人id数组
     * @param receiveNameArray 收件人姓名数组
     */
    public void add(MailBean mail,Integer[] receiveIdArray,String[] receiveNameArray);

    /**
     * 动态分页查询（有效）邮件记录，登录员工id为固定条件，主题、起始日期、结束日期为动态条件
     * @param pageNO 页码
     * @param title 主题
     * @param startDate 起始日期
     * @param endDate 结束日期
     * @param userId 登录员工id
     * @return 邮件分页对象
     */
    public PageInfo<MailBean> findMailByItem(Integer pageNO, String title, LocalDate startDate,LocalDate endDate,Integer userId);

    /**
     * 根据邮件id查询邮件信息
     * @param mailId 邮件id
     * @return 邮件对象
     */
    public MailBean findMailById(Integer mailId);

    /**
     * 根据邮件id修改邮件状态为无效
     *
     * @param mailId 邮件id
     * @return
     */
    public void delMail(Integer mailId);
}
